package com.im.service.group.model.req;

import com.im.common.model.RequestBase;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;

@Data
@ApiModel(description = "创建群组请求参数")
public class CreateGroupReq extends RequestBase {

    @ApiModelProperty(value = "群组 ID", example = "123456")
    private String groupId;

    @ApiModelProperty(value = "群主 ID", example = "123456")
    private String ownerId;

    @ApiModelProperty(value = "群类型，1：私有群，2：公开群", example = "1")
    private Integer groupType;

    @ApiModelProperty(value = "群组名称", example = "Test Group")
    private String groupName;

    @ApiModelProperty(value = "是否全员禁言，0：不禁言，1：全员禁言", example = "0")
    private Integer mute;

    @ApiModelProperty(value = "加入群权限，0：所有人可以加入，1：群成员可以拉人，2：群管理员或群组可以拉人", example = "0")
    private Integer applyJoinType;

    @ApiModelProperty(value = "群简介", example = "This is a test group.")
    private String introduction;

    @ApiModelProperty(value = "群公告", example = "Welcome to join our group!")
    private String notification;

    @ApiModelProperty(value = "群头像", example = "https://example.com/group.jpg")
    private String photo;

    @ApiModelProperty(value = "最大成员数量", example = "100")
    private Integer MaxMemberCount;

    @ApiModelProperty(value = "群成员列表")
    private List<GroupMemberDto> member;

    @ApiModelProperty(value = "附加信息")
    private String extra;
}

